function replaceAndPushBalanceUpdate(e){window.dataLayer||(window.dataLayer=[]);const t="balance_update";for(let e=window.dataLayer.length-1;e>=0;e--)"object"==typeof window.dataLayer[e]&&null!==window.dataLayer[e]&&window.dataLayer[e].event===t&&window.dataLayer.splice(e,1);window.dataLayer.push({event:t,balance_cash:e[0],balance_bonus:e[1],balance_total:e[2]})}function updateBalance(){$.getJSON("ajax/getbalance.php",(function(e){replaceAndPushBalanceUpdate(e)}))}document.addEventListener("DOMContentLoaded",(function(){window.addEventListener("load",(function(){document.getElementById("overlay")&&(document.getElementById("overlay").style.display="none"),document.getElementById("loader_overlay")&&(document.getElementById("loader_overlay").style.display="none")}));const e=document.body.getAttribute("data-userid")||null;window.dataLayer=window.dataLayer||[];let t=window.location.pathname||window.location.search;if("/index.php"===t||"/index.php/"===t){const e=new URLSearchParams(window.location.search);t=e.get("page")||"home"}t&&"/"!==t||(t="home");const n=(new Date).getTime();function o(){const e=function(){const e=document.cookie.split(";");for(let t of e){const[e,n]=t.trim().split("=");if("sid"===e)return n}return null}();if(!e)return Promise.reject("No session ID");const t=function(){const e=location.hostname.includes("localhost")||location.hostname.includes("local.whg.tech")||location.hostname.startsWith("dev-")||location.hostname.includes("dev.whg.tech"),t=location.hostname.includes("whgstage")&&!e||location.hostname.includes("stg.whg.tech")||location.hostname.startsWith("site.stage");return location.hostname.includes(".iom.stg.whg.tech")?"https://platform.iom.stg.whg.tech/platform/usergateway":e||t?"https://platform.eu.stg.whg.tech/platform/usergateway":"https://platform.whitehatgaming.com/platform/usergateway"}(),n={name:"favourites",sessionid:e};return fetch(`${t}/getbalance`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}).then((e=>{if(!e.ok)throw new Error(`HTTP error! status: ${e.status}`);return e.json()})).then((e=>{if(e.depositInfo&&void 0!==e.depositInfo.count)return e.depositInfo.count;throw new Error("Invalid response format")})).catch((e=>{throw console.error("Error fetching deposit count:",e),e}))}function a(e){localStorage.setItem("depositCount",e.toString())}function r(){const e=localStorage.getItem("depositCount");return e?parseInt(e,10):0}function i(){return 0===r()}function s(){o().then((e=>{a(e),console.log("Deposit count initialized:",e)})).catch((e=>{console.warn("Failed to initialize deposit count:",e)}))}function c(e){window.dataLayer=window.dataLayer||[],window.dataLayer.push(e)}function d(e){dataLayer.push({event:"load_speed_atf_render",event_category:"load_time",event_action:"promotions_above_the_fold_render",event_label:"complete",custom_load_speed_atf_render:Math.round(e)})}function l(e){dataLayer.push({event:"load_speed_atf_render",event_category:"load_time",event_action:"above_the_fold_render",event_label:"complete",custom_load_speed_atf_render:Math.round(e)})}document.addEventListener("click",(function(t){const n=t.target,o=n.classList.contains("whg-cashier-ui-open"),a="account-withdraw"===n.id;o&&(localStorage.setItem("cashierStartTime",(new Date).getTime()),c({event:"deposit_start",event_category:"cashier",event_action:"deposit",event_label:"start",time_triggered:(new Date).getTime()})),a&&c({event:"withdrawal_start",event_category:"cashier",event_action:"withdrawal",event_label:"start",user_id:e})})),function o(){(new Date).getTime()-n>=15e3||(window.dataLayer&&window.dataLayer.push?(c({event:"page_view",page_type:t,user_id:e}),c({event:"session_start",event_category:"user",event_action:"session",event_label:"start"}),c({event:"user_info_update",event_category:"account",event_action:"userinfo",event_label:"success",user_id:e})):setTimeout(o,100))}(),window.addEventListener("message",(function(t){let n=t.data,s={};"object"==typeof t.data&&t.data.type&&(n=t.data.type,s=t.data.payload||{}),setTimeout((()=>{if(["cashier-ready","session-expired"].includes(n)){localStorage.getItem("cashierStartTime")&&((new Date).getTime(),parseInt(localStorage.getItem("cashierStartTime")));const t={"cashier-ready":{event:"deposit_loaded",event_category:"cashier",event_action:"deposit",event_label:"loaded",time_triggered:(new Date).getTime()},"session-expired":{event:"session_expired",event_category:"cashier",event_action:"deposit",user_id:e,event_label:"expired"}}[n];t&&c(t)}else if(["ftdSuccess","deposit-sucess","depositSuccess"].includes(n)&&s.amount&&s.currency){const t=i();let d;d="ftdSuccess"===n&&t?"deposit_success_ftd":"deposit_success",c({event:d,event_category:"cashier",event_action:"deposit",event_label:"success",user_id:e,currency:s.currency,value:s.amount,transaction_id:s.transactionId||"",bonus_group_id:s.bonusGroupId||"",deposit_count:r()+1}),o().then((e=>{a(e),console.log("Deposit count updated after successful deposit:",e)})).catch((e=>{console.warn("Failed to update deposit count after deposit:",e)}))}else if("depositInitiated"===n)c({event:"begin_checkout",event_category:"cashier",event_action:"deposit",event_label:"checkout",user_id:e});else if(["depositFail","deposit-fail"].includes(n)){const t={event:"deposit_failed",event_category:"cashier",event_action:"deposit",event_label:"failed",user_id:e};s.amount&&(t.value=s.amount),s.currency&&(t.currency=s.currency),s.error_msg&&(t.error_msg=s.error_msg),c(t)}else if(["withdrawRequest","withdraw-request"].includes(n)){const t={event:"withdrawal_requested",event_category:"cashier",event_action:"withdrawal",event_label:"request",user_id:e,...s};s.amount&&(t.value=s.amount),s.currency&&(t.currency=s.currency),s.transactionId&&(t.transaction_id=s.transactionId),c(t)}}),10)})),function(){if(window.performance&&window.performance.timing){const e=window.performance.timing,t=e.responseStart-e.navigationStart;t>0&&window.dataLayer.push({event:"load_speed_ttfb",event_category:"load_time",event_action:"time_to_first_byte",event_label:"complete",custom_load_speed_ttfb:t})}}(),function(){const e=performance.now(),t=document.querySelectorAll("#logo-atf, #carousel-atf");if(0===t.length)return;let n=0;const o=t.length;t.forEach((t=>{const a=new IntersectionObserver((r=>{r.forEach((r=>{if(r.isIntersecting&&(n++,a.unobserve(t),"carousel-atf"===t.id&&function(e,t){const n=()=>{const o=e.querySelector(".whg-slide-img");if(o){if(o.complete)return firstCarouselImageRenderTime=performance.now()-t,void l(firstCarouselImageRenderTime);o.onload=()=>{firstCarouselImageRenderTime=performance.now()-t,l(firstCarouselImageRenderTime)},o.onerror=()=>{}}requestAnimationFrame(n)};n()}(t,e),n===o)){!function(e){dataLayer.push({event:"load_speed_atf_loaded",event_category:"load_time",event_action:"above_the_fold",event_label:"complete",custom_load_speed_atf_loaded:Math.round(e)})}(performance.now()-e)}}))}));a.observe(t)}))}(),function(){const e=performance.now();!function(e,t){const n=document.body,o=new MutationObserver((n=>{for(const a of n)if("childList"===a.type)for(const n of a.addedNodes)if(n.classList&&n.classList.contains(e))return o.disconnect(),void t(n)}));o.observe(n,{childList:!0,subtree:!0})}("all",(t=>{if(!t)return;const n=new IntersectionObserver((o=>{o.forEach((o=>{if(o.isIntersecting){n.unobserve(t);const o=performance.now()-e;a=o,dataLayer.push({event:"load_speed_cll",event_category:"load_time",event_action:"casino_lobby_loaded",event_label:"complete",custom_load_speed_cll:Math.round(a)})}var a}))}));n.observe(t)}))}(),function(){if(!window.location.pathname.includes("promotions"))return;const e=performance.now(),t=document.querySelector("whg-cms-promotions");if(!t)return;const n=new IntersectionObserver((o=>{o.forEach((o=>{if(o.isIntersecting){n.unobserve(t);const o=performance.now()-e;a=o,dataLayer.push({event:"load_speed_atf_loaded",event_category:"load_time",event_action:"promotions_above_the_fold",event_label:"complete",custom_load_speed_atf_loaded:Math.round(a)}),function(e,t){const n=()=>{const o=e.querySelector(".img-container");if(o){const e=o.querySelector("img");if(e){if(e.complete){return void d(performance.now()-t)}e.onload=()=>{d(performance.now()-t)},e.onerror=()=>{}}}requestAnimationFrame(n)};n()}(t,e)}var a}))}));n.observe(t)}(),e&&setTimeout((()=>{s()}),1e3),window.initializeDepositTracking=s,window.fetchDepositCount=o,window.storeDepositCount=a,window.getStoredDepositCount=r,window.isFirstTimeDepositor=i})),document.addEventListener("DOMContentLoaded",(function(){setInterval((function(){window.location.pathname.includes("/play/")&&updateBalance()}),5e3)}));